# 字典的创建
d = {
    'name': 'mia',  # 键值对
    'gender': False,  # 值可以bool类型
    'name': 'Albot',  # 键重复使用的话，会覆盖掉前面的值
    'score': 84,  # 值可以是整数
    'course': '物理',
}
print(d, type(d))
d1 = {}
print(d1, type(d1))
d3 = dict()
print(d3, type(d3))

# 键值对的增加
d['height'] = 170
print(d)
# 获取键值对
print(d['name'])  # 字典通过键来获取值
# 修改键值对
d['height'] = 165
print(d)
# del d
# print(d)

# in
print('name' in d)

# 字典的遍历
for i in d:  # i获取的是键
    print(i, d[i])  # d[i]获取的是值
print(d.items())  # 将字典转化成列表
for i in d.items():
    print(i)
for k, v in d.items():
    print(k, v)  # 可以分别输出字典的键和值
for i in d.keys():  # 获取字典的键
    print(i, end=" ")
print()
for i in d.values():  # 获取字典的值
    print(i, end=" ")
print()

# 字典的常用方法
print("-"*50)
d.pop('name')  # 通过键删除特定的键值对
print(d)
a = d.copy()  # 复制字典
print("a的键值对为：", a)
d.clear()  # 清空字典
print(d)
print(a.get('score'))  # 通过键获取特定的值
a.popitem()  # 删除字典末尾的键值对
print("pop", a)
a.update({'age': 19})  # 添加一个键值对
print(a)
